package is.ru.honn.rupin.service;

import is.ru.honn.rupin.domain.*;

import java.util.List;

/**
 * The interface of the actions for the pin service
 */
public interface PinService
{
  public Board getBoard(String username, String boardname);
  public List<Board> getBoards(String username);

    /**
     * This functions adds a board to the data source
     * @param username the username of the creator
     * @param boardname the name of the board
     * @param category the category of the board
     * @return the newly created board
     * @throws UserNotFoundException
     */
  public Board createBoard (String username, String boardname,
                            String category)
    throws UserNotFoundException;

    /**
     * This function adds a pin to the data source
     * @param username the username of the creator
     * @param boardname the name of the board
     * @param link the link
     * @param description the description
     * @param image the image
     * @return the newly created pin
     * @throws BoardNotFoundException
     */
  public Pin createPin (String username, String boardname,
                        String link, String description, String image)
    throws BoardNotFoundException;
  public List<Pin> getPinsOnBoard(String username, String boardname);



}
